<!DOCTYPE html>
<html lang="zh-CN">
<head>
  <meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=2">
<meta name="theme-color" content="#222">
<meta name="generator" content="Hexo 5.4.0">
  <link rel="apple-touch-icon" sizes="180x180" href="/images/apple-touch-icon-next.png">
  <link rel="icon" type="image/png" sizes="32x32" href="/images/favicon-32x32-next.png">
  <link rel="icon" type="image/png" sizes="16x16" href="/images/favicon-16x16-next.png">
  <link rel="mask-icon" href="/images/logo.svg" color="#222">
  <meta http-equiv="Cache-Control" content="no-transform">
  <meta http-equiv="Cache-Control" content="no-siteapp">
  <meta name="msvalidate.01" content="3B3E06144BB6363961FBE583C9BA49E6">
  <meta name="baidu-site-verification" content="2IGNE9f4OxLiq11O">

<link rel="stylesheet" href="/css/main.css">


<link rel="stylesheet" href="/lib/font-awesome/css/all.min.css">
  <link rel="stylesheet" href="//cdn.jsdelivr.net/gh/fancyapps/fancybox@3/dist/jquery.fancybox.min.css">
  <link rel="stylesheet" href="/lib/pace/pace-theme-loading-bar.min.css">
  <script src="/lib/pace/pace.min.js"></script>

<script id="hexo-configurations">
    var NexT = window.NexT || {};
    var CONFIG = {"hostname":"atan2021.gitee.io","root":"/","scheme":"Mist","version":"7.8.0","exturl":true,"sidebar":{"position":"left","display":"post","padding":18,"offset":12,"onmobile":false},"copycode":{"enable":true,"show_result":true,"style":"default"},"back2top":{"enable":true,"sidebar":false,"scrollpercent":true},"bookmark":{"enable":true,"color":"#222","save":"auto"},"fancybox":true,"mediumzoom":false,"lazyload":false,"pangu":false,"comments":{"style":"tabs","active":null,"storage":true,"lazyload":false,"nav":null},"algolia":{"hits":{"per_page":10},"labels":{"input_placeholder":"Search for Posts","hits_empty":"We didn't find any results for the search: ${query}","hits_stats":"${hits} results found in ${time} ms"}},"localsearch":{"enable":true,"trigger":"auto","top_n_per_article":1,"unescape":false,"preload":false},"motion":{"enable":true,"async":false,"transition":{"post_block":"fadeIn","post_header":"slideDownIn","post_body":"slideDownIn","coll_header":"slideLeftIn","sidebar":"slideUpIn"}},"path":"search.xml"};
  </script>

  <meta name="description" content="Here&#39;s something encrypted, password is required to continue reading.">
<meta property="og:type" content="article">
<meta property="og:title" content="日记">
<meta property="og:url" content="https://atan2021.gitee.io/2021/%E6%97%A5%E8%AE%B0/index.html">
<meta property="og:site_name" content="博客">
<meta property="og:description" content="Here&#39;s something encrypted, password is required to continue reading.">
<meta property="og:locale" content="zh_CN">
<meta property="article:published_time" content="2021-08-27T15:13:36.000Z">
<meta property="article:modified_time" content="2022-01-23T12:21:56.504Z">
<meta property="article:author" content="陈政任">
<meta property="article:tag" content="日记">
<meta name="twitter:card" content="summary">

<link rel="canonical" href="https://atan2021.gitee.io/2021/%E6%97%A5%E8%AE%B0/">


<script id="page-configurations">
  // https://hexo.io/docs/variables.html
  CONFIG.page = {
    sidebar: "",
    isHome : false,
    isPost : true,
    lang   : 'zh-CN'
  };
</script>

  <title>日记 | 博客</title>
  






  <noscript>
  <style>
  .use-motion .brand,
  .use-motion .menu-item,
  .sidebar-inner,
  .use-motion .post-block,
  .use-motion .pagination,
  .use-motion .comments,
  .use-motion .post-header,
  .use-motion .post-body,
  .use-motion .collection-header { opacity: initial; }

  .use-motion .site-title,
  .use-motion .site-subtitle {
    opacity: initial;
    top: initial;
  }

  .use-motion .logo-line-before i { left: initial; }
  .use-motion .logo-line-after i { right: initial; }
  </style>
</noscript>

</head>

<body itemscope itemtype="http://schema.org/WebPage">
  <div class="container use-motion">
    <div class="headband"></div>

    <header class="header" itemscope itemtype="http://schema.org/WPHeader">
      <div class="header-inner"><div class="site-brand-container">
  <div class="site-nav-toggle">
    <div class="toggle" aria-label="切换导航栏">
      <span class="toggle-line toggle-line-first"></span>
      <span class="toggle-line toggle-line-middle"></span>
      <span class="toggle-line toggle-line-last"></span>
    </div>
  </div>

  <div class="site-meta">

    <a href="/" class="brand" rel="start">
      <span class="logo-line-before"><i></i></span>
      <h1 class="site-title">博客</h1>
      <span class="logo-line-after"><i></i></span>
    </a>
  </div>

  <div class="site-nav-right">
    <div class="toggle popup-trigger">
        <i class="fa fa-search fa-fw fa-lg"></i>
    </div>
  </div>
</div>




<nav class="site-nav">
  <ul id="menu" class="main-menu menu">
        <li class="menu-item menu-item-home">

    <a href="/" rel="section"><i class="fa fa-home fa-fw"></i>首页</a>

  </li>
        <li class="menu-item menu-item-categories">

    <a href="/categories/" rel="section"><i class="fa fa-th fa-fw"></i>分类</a>

  </li>
        <li class="menu-item menu-item-tags">

    <a href="/tags/" rel="section"><i class="fa fa-tags fa-fw"></i>标签</a>

  </li>
        <li class="menu-item menu-item-archives">

    <a href="/archives/" rel="section"><i class="fa fa-archive fa-fw"></i>所有博客</a>

  </li>
        <li class="menu-item menu-item-about">

    <a href="/about/" rel="section"><i class="fa fa-user fa-fw"></i>关于</a>

  </li>
      <li class="menu-item menu-item-search">
        <a role="button" class="popup-trigger"><i class="fa fa-search fa-fw"></i>搜索
        </a>
      </li>
  </ul>
</nav>



  <div class="search-pop-overlay">
    <div class="popup search-popup">
        <div class="search-header">
  <span class="search-icon">
    <i class="fa fa-search"></i>
  </span>
  <div class="search-input-container">
    <input autocomplete="off" autocapitalize="off"
           placeholder="搜索..." spellcheck="false"
           type="search" class="search-input">
  </div>
  <span class="popup-btn-close">
    <i class="fa fa-times-circle"></i>
  </span>
</div>
<div id="search-result">
  <div id="no-result">
    <i class="fa fa-spinner fa-pulse fa-5x fa-fw"></i>
  </div>
</div>

    </div>
  </div>

</div>
    </header>

    
  <div class="back-to-top">
    <i class="fa fa-arrow-up"></i>
    <span>0%</span>
  </div>
  <a role="button" class="book-mark-link book-mark-link-fixed"></a>


    <main class="main">
      <div class="main-inner">
        <div class="content-wrap">
          

          <div class="content post posts-expand">
            

    
  
  
  <article itemscope itemtype="http://schema.org/Article" class="post-block" lang="zh-CN">
    <link itemprop="mainEntityOfPage" href="https://atan2021.gitee.io/2021/%E6%97%A5%E8%AE%B0/">

    <span hidden itemprop="author" itemscope itemtype="http://schema.org/Person">
      <meta itemprop="image" content="/images/avatar.jpg">
      <meta itemprop="name" content="陈政任">
      <meta itemprop="description" content="what atan">
    </span>

    <span hidden itemprop="publisher" itemscope itemtype="http://schema.org/Organization">
      <meta itemprop="name" content="博客">
    </span>
      <header class="post-header">
        <h1 class="post-title" itemprop="name headline">
          日记
        </h1>

        <div class="post-meta">

	  
            <i class="fa fa-thumb-tack"></i>
            <font color=7D26CD>置顶</font>
            <span class="post-meta-divider">|</span>
          
            <span class="post-meta-item">
              <span class="post-meta-item-icon">
                <i class="far fa-calendar"></i>
              </span>
              <span class="post-meta-item-text">发表于</span>

              <time title="创建时间：2021-08-27 23:13:36" itemprop="dateCreated datePublished" datetime="2021-08-27T23:13:36+08:00">2021-08-27</time>
            </span>
              <span class="post-meta-item">
                <span class="post-meta-item-icon">
                  <i class="far fa-calendar-check"></i>
                </span>
                <span class="post-meta-item-text">更新于</span>
                <time title="修改时间：2022-01-23 20:21:56" itemprop="dateModified" datetime="2022-01-23T20:21:56+08:00">2022-01-23</time>
              </span>
            <span class="post-meta-item">
              <span class="post-meta-item-icon">
                <i class="far fa-folder"></i>
              </span>
              <span class="post-meta-item-text">分类于</span>
                <span itemprop="about" itemscope itemtype="http://schema.org/Thing">
                  <a href="/categories/%E6%97%A5%E8%AE%B0/" itemprop="url" rel="index"><span itemprop="name">日记</span></a>
                </span>
            </span>

          

        </div>
      </header>

    
    
    
    <div class="post-body" itemprop="articleBody">

      
        <div class="hbe hbe-container" id="hexo-blog-encrypt" data-wpm="Oh, this is an invalid password. Check and try again, please." data-whm="OOPS, these decrypted content may changed, but you can still have a look.">
  <script id="hbeData" type="hbeData" data-hmacdigest="d8515d7e660034796937b750212285d7a2a2aa427bfa7eef6f07af4c6da8a287">27b300880235c175b3d490949558149e5b74b07a380f33232e501080bb3f1b784844a000ac6aec3c2ccdfc3ccac0aeef3abb707bdddfbea979a0bbded5044d88e2612c83d8c1ed9df3a432605eb6763b261205acd73398e31757016f0f7356aa1b704ae881fb954b583f5c255ce8d0e26d7dfd35453b2d15feada517ef5821ae83b563e239d1f951b2835fa206217ded08fa991af50a7ddadfbe37efa0f4bd749b30402dd25fe9faf70d6a2c74cabca35c9543f0763b1b1dca7ef0b1d8d20b0db2fde5391859de24443646d7338685f850f7ef441c032ad8a00000cb46176f29c960fdedadd307a10ec9e117c74330f4d55cfadeacb640acd41fc2d8578a511120601dc83ee7d1159e444c0ec080b42c35c6c1253b40b9f79893879f16ba92833f3c93d497414f1eed3d4017535469f28f9dd9c0d4c979cbf233e7aa645e8fcf474436decf1c451ca7eaf54a3dc324f380841a4a589118c63da3384401444fbd400e545a472c4320f6f612245cbdbae2d9bfc916a795c1564837f0580f98067afc525549608b5ebad7b5bdbbe497f92092f187bbfaa2ec65291cc4a51f394429c25422086c6d38dfebb9bcce87d3a18d6d0ad06ec9fb6be75a36078fcd5d3ad3b7fcadc83025035a09502872b22a4a487186ed335d90b7964b957a4a6f83c945e83ef7b3473db3e65d9527707c6567050ff1e14e7eae38e541814f3e0137406b745ead6ed00f054ab16273c2d3566fa3919840bcc49fe3a7d45c43a05387f772f2547f8793b93c9d742c2467f0ba77c9f47f1a0605bf5cfd1314a1b98a9aed9d33cdccf81c8daf5e63869b299270b714d9df83c917c1e5badf46b0cef9524b1fe330544b75e5877469e130d1e5ffd336eddf213a69421762352153a52ec55661129b2baad998887bbed29e4e3f2232be8ee101edbf060ae4f0e5d5e8e0a2b3046809e93eb5c25aa2835832e45b9bfc8d96e467b7f31a9623848a4af21349bcab641eb327e6389d12224e8a6b49e9635d448329737b63ee586be64a8ed78b67623b7e0a774bf41e9093d02229d5c80f4c9d4127ec70a397910646d952a8ed068db504c994113ca7482bf894d2f396412afd8fbf50b9abab05005e4bb47c54ddd606f08af60a3bcf44aca02191a0a953f8dc527afb979d1f6937b7f436299e06573c60a00280ea9730972d7bbbb49fc3e5314dc0cadd6a52dbb0ebda0d95af2912b7b279d3deb08f4b725ee36b784807d1b9875691e0faffbdd594bae070fcc324476c4490ff04df85fbc1479dfefb64583e419433841da708dd72577ad1c2cf15330972ea447122f6a961fb632fb67a675b67fc0236859f664a25c3ba3d22ef1fd5b666db563a44db15aa236d858c373cb9928db2e0a5e252516c5197837091f31ee8605fd4fc6fae7e3fa63c69c2fdaaeaf91119e90e708e9aa1d4015b15630ea3ef520bd253aa98fa01d22e9675c70d4da90c9ad7692fe2e0ec9c0acf4502356a634803c768242e20a22d44cc4c0280c310e30b6bf72fc99900c74c83f94f3dd3f0f490e43afa69588c6f66a9936757bcad0de99ac3dc8c3129fe1763cd727fc6c13fff82be1e667877ecee3e2ee0988e0a3883411df2bf4cd401cc43ccd9b791bc8496ea3ae03d76bfe4aea76d10b0507366d5128fa8b8930f822430a40db13571125190e7d8657e4f9441cbd3b67660cadb3f40aa06cfc4b658ac0c3a54227c44191d688b2814fc7e5b457091e92166a1dc6f69c8c16a90e889a5da764fa2ad7439b99bb48645658f326001fb90897ec01fc9fae4e0a46670cc0ffbf1f7cd6c3a9223096006eca4ccbe7d3b17098422f479a488184ebeadc3d9524371ae12e41180468ee564bcfcb788528694558d2f33af9b8a5c705434003b5198263582a924344201b5bac4dde0fa77a7bda82ba5628ea58680c96af0a6965d2a355af4e4e2fed7abbf29959f24fc23dcb9cc2614b371cc07240bd965e06665bb7d11b7f9132ac7320703f02750c6301e6f67c33571847f94d9af8bb79e3a8ac4bf709cd4be000a3de58d115610ec6889ed26124bbf854dda68d2fbbbc2028b36e24c0470211f87fdf5aac58fb5698d440c611e8d5fec6be1af33cbc689a0ff4fe63e48f8100211c7b3f8ed82fcb7c9350269b7f27b6240a670b4509c64fee5e06c391e4aa8326a7748ebbf859b8f4f35cc1480b5dec77c718257a6b828a956078c1cbdb7216d53486d7b7457121a0a4f1536ba0b2b7d6c989233de316fb7530cf076b44dd382f1feb04952b917be34c56f0b097c591d5c90b0da8a380d70e1fc5ba03216848639c2c2b5800d0d0d9b510568cdff5000e4a8bbd94286f1a4fc1eb2f39ee012d53c365a7dc93635b62361af19652d9f3f4c1845c774e359577bb46bdbe29cc37e77858af16b0cf2236b807f47036c6e07ea886b92fe53ce9072da97c6a8cd148619632d29a0a716f05790372d7de01b57cf9429e228de6c793ceab6184c28c186bbd6287463ff1737389b8d77485c03e445fb3241cb52c907b2fe7b56eed1a78e0088a145533288f1642fdeecd139d061ea2a25f85523318d7ac0746196db33c118f24f3a3589004bdede9d77d2aaaf1998177227cb57af1fd6d6099f434b98822bd6f0f2eb0b1cd91431cd36cf3e8054af2204dbce4c6edf02b763a1086405cbca225d4acb6413419dfbd59820e587e119024db1b30160aab7b39e852c81c946671d38ba8d5c02a6a75ed8bac5dd5d9089ef8ba946b9d6f080a0dc001c3062acbb7be875bd2204fd14ae880e458ee00d46f9afe40e60ede1984608465cfb6518db12c362e9296f7c913cb8ee5e5a260809cd6a1e1bbaf7ff90eb4b974e0ceaf77daee2260801bdfff1b7313ea03cafb20710f9cedbefeecc64fbcdac6846b733a1b688828c2a31f3c7e56f15d45971d4689df71d709362b8eb284441131cf7d0762d89edcaaaf2e602b96d01134f36c02f2f33f6db05bb8dca8b9bc71897cc948fe7659c425866b4934f1495c115cf305bdffa51880409bd49a20b5f0f8e2b1abb30c359256f868c1be5007f74b882ecdaf849efcd4f5726993c43171d8d1a37855454013e0bf2f547a39f8ea5adf33c02a98781189c8a207de5b3880efbe0ec34c3d7408e9925558c5444f059de7499e7c3cf60c446aceaa7d07649177c31395d100af2de691914ffa2411a0d0362293a04dcbe018b942eda3390eb0d162e7e8d1ed4a7817a23b70a23ab7161a367d10f6d6758a40428bb9c4e814d5daf4ae97bdd2aa597f7bbe78021f6514836d127abb95abbd715c3200838ac1ae4d97f4700f86239c442016b2bb577b13ee971b64d27becd64c47e9c959495277e773ad9643faeeb4c613272b730db18b196be5aa898ec7876ee1c006037a7564efe9246843d8e498523e95cda206d30e9350ef099d31a082cd4a236b3185b91cd1e9b9595ffd5c24ea5592dc6b452157562b311c2215cc2988dfb2742c4d702e68f1fc44dc51efaa4cb11067968aad226dd36e77df03f8d98da4b3eb159545d61273f422229ce90272cdced683ab5ae4cf3a08e4845d55d358969db0383c3ccc2eb71909b459d9fa80e902946d2940d7a9d288ad3723acdfc3d3e86263d03e7c78eab87f6406f22d7db1324c821646b3c5b62dd0d81c052a0e5c6951dbaeb4d73107c33895db8f2823b7da7b5da2c1bfe196691ed6298f27b27887818204df721f488fe150d4274f6fb126d451918289f02889d8781c198c81eb03c2802c27c075fdf7c28f23c02f528cff02fa4fbb1bab8867182d418d7d370b24b5e1a18164801a6f772268a5d16b98a57ab9c072c43a105553fe6d3e64bd9c446ec880ba4404f61441736dc35f0ae3630567d3db7d6ae9d9c6f93823feda5d4ab36c5a1cd7728011d695a06f426e0d15547100d7a77751f52a04a6b67b8d03757c1ff3d9d8728ca0de151d9fcadedcc98f567d592ee3a95483ee51a7aaec4df52b3e1864a142db15cd4f75583a3141b20774046e10e9966c173130555148aa18d8adfcccc9a47f0a2b2fc7c37afa00a781cdb9821820c6252b2d724d00da0632a53d07d633d451a4d2e66151869fcdbd8a1d4b3d420f77999823b25413b6cb8244287ab358e58251fc2c1a7456d28374c09f03256d4428e8fc66a7a157eeadbba036b3316729a55ff8703b1cca5f5e8ea4fd3775e6c5c3d593968758c0289c2cca76902e657b516f56a2302a7bcf83ec236501e8bb159936b5abae885a6e1ece25e50c0358ba9fac948bc0e93aec95abd75ab61a05a698404142ee180ebd6cb2a5abc8b62de1b581b5cbae94d1677847a9b2b2a11854041d138f8b842007793a6e848bc4ca5e032864f08cb3006f84d672bce362dab42b61f11747f708af07590f40776f1004c524d6b699ee0badfc7a8c40ebe1fc64b34263248426874bfb661a2f107c3ccb6651cbe7d3ea9910bde362b8b4dcc6769913be13c558363b0054d637c454a0f1b8a1083e11613f4a2da553a7f7a4fc60ba4b4bb420388580ea6c8447d4eafbe0ecba2ae8d0cc50b5bb4aa32274d38ac5771b059b8851e0acd172492ec94394009d0631080f4e3797d17bf089b5c8e8727544ec6f04514818b8b078287c9c570f31d376438b6d36a986cd162f3b9d75a8d6eaf134eb84da96e3cd8432b65c59430733c22a4dfd0c6ae18944f52304325967f8fdf13937c192e857995cebf3355ca90af6cb0bd2e24584433e8a1aaf1077bff0c7349263b42586b013ba37535795c7dfb06d37ecb202763e76a728da3480a195d31378aaa2ff71d0526aaf1f433ffb18ae10fbe147700722f1de2726096dfe4027fc79f84621e4c89c51e2d5d1ed40efb6b7a9fea0bbd6516ae036f712e3554a99512c839e22b84a9a809fff438a8e5ccc22f057dd511901ae6d14000de789c091667ebd4d69c7319fe42571c312bf555f9bff5692e4bc3a940559f62bc4e3659bf0f359c27a5983491919ce5359030733e60b5352cc6719e4369d6b8f8b8caf04da3d1ef173640cbfc4803f538cbd9271cc8d67c98e22aa2245aea5a8fadce016ec66e702ef1b95b7465af8dbb8e594b6de0afc8c7adb9be168a9fdb9b028848d179c991848c3ffc19f705aa04ef5fe8f8926975dbd0c9f6981a9894be3dbf0f361539f9357b017322f3ab788bf33343c4e35c1c34e43e77ceacb08c954ecb47c0706e3f35e634b4865e650c9bec42883dac7264a31426f4d904be70adb828bf27b896eef7b335c9ce8cff1e3806260f1556022a4b7380a5c0ceab1c3f2887f975540463bed0c076da369903ba95ecd71008a3196bbd8098e6fc7b27a9b68bf559140554be65e793bef11b359ceba7e502a3fec453d8872cd608e36c8c42d84c62385228db31733da4f63717f8505b504c18141add97336540b5799c15089270306bb33623181c9c55cc8f90a5a334507dec2a5b1b609e00f8a121cc1d6e4af6a656a3d7e802b7e6c12f017513e8a6a7d94ac165620c2b5fd4e52ef5a90bfb6b1120897f5a00eaa016fac22719e76881bb4367a7e8829573ce6d78d164b348819413e9b9d95ad55639fc5d231642349d1717aa9bb01837965ce3ce63fbe25276efc4c17bd1224bd9618e449fa27ccdc2caf103f3af4734857982d1b996f4a1ce9fc4c11810297a7cf767920fb6684d970f6b9c729792d2d5763dafe06d4ed3283ccd75ea71172d815ac3ae82db3cf260751253dcaddeb843537640b890def74ba6a2724a7d260a2ab57be0e58eb14257016ba1874a9974524793aa0e7955f3242732e8d5853af89f26648348af517d43b3586da609792cfff88cadc8099d31bea3216bcd99f20167f7337511508a161212b03647d1d40aacef37702303907655b47ac5dd43f3822b0d1fa7941cacfcc76f7e75ecfb0e6d0b8c72fa2e835a601affceefb9eb2d9416f64e88605d80209130a829ce59191d240098c720587ba781c28c9313afe9c454ee3240ab9fa7636d41cbca6583639b88172fe4de4a7c9a302240fa7998d3b04f3a4d63833118b599f982efea04eb0590c5203d1c372950626079e08063467c0ab874f743083dc5232ec709e6ce0d03ca039a57bb1d51a7dc74e9dfff49c9ef08582a71624dbbcd7cb458431bfa6dd4b97e249cc6828796b1e692304a3540c55840c491c20b3b38056bb2acbf1cdf317e0b40bcfe742d65dcf68e60a664bcd4fee3e2606456492085b05c1a9c0d34f2e0f1d5d2d0759c46bfa8068f86f8e017eadf190d7e92b22a5db13529aec807b3e4130766d13e98d43b58d55f115d6f620f49657b0b6e28cb2c7e1b18b7e94848a5093f854dca6b02697eccef34c48eaa8e6232c190183db9c10ee894382286fce8857de1ae5a7b67adfb04c137b8d70ae78be1ebe98523912d0ba1aedbf9d9ec398bbc24c25da569811c11675aafbc32f9df3f1c3f4f007fc34360a8011a08508afef79d4c3c7322c5948fc7c3c06f2790e20b08aac8908f3ff9cb6a153a82eeb2e20c5168060e3a811a88942f3a482a5a1c0e449a7bdc38edd4dd32a978f5c3abc7e6a425bf7dd012104eb1c688602e45a4768a3fa70344f7f5f38798e676e7c88aff8bbae10bc1602d367bf90387071b82e091639d7a0c631264b587b6e5d0447abac243ca26e0a445ce6c379b9f369b6d2f183c7c7c4d765045a4d2558f3c93a1816b9b2a2f239217a6de510ab65f02d713c34e1fed317dd7a8b190d5b4c04eeb00a5bd4cc6a86592bb0ef7f25b624991261b3b695cf9cbb5f988e4e3407fc0638b17276172d4e931b421613d72c1161c503e288c09e1ea18e30fcec917758ba3d0caa22aaafe78dad0e049168f326ef262efcf4819c175b8f8978e181ee84614e71a8ebfe2ab2f13ea10c9298ca8f32d16e1b628d2c708ef95709e00433ed0fddaadfcd720700ad59b81f739ed2d35e48b503c4e96a05a078932ae55d8d98f208ef33111d0a9cfc2485a1d1a9368133439c4bcff852b7fc7c1fc08e9490383a731e25c97041a1ddb8d4840defafbb47a54d4b95a8bd30dca7a7028d73d1ef8e0a8583af393ce3ac9255f379ff50e5554a9c668fc833eae4e2c90f96d2ea3615c0ab80a53e1ab2f97b94f2d3db6b357f6433de65555d462c43b4db42c24d0504c3a038d6be9db078615ec1b4e34d2fb76a1adad8813c708bb2d6d3f347876c4c7d285ff30c3c56f68c9a110a98767da2fed0fda1d6cfa14635e2323310f8fa96fcfa3c6d400b388f033c5cd160f7fc19b30dc6275ab58366b2edb779dc1a1e7d9055dcd54b990f843ad1d7b9c4097deba68b5d20730ef82429932e6f8b5e5ad3d5fc9c9a82681f68b27273965378c779cb0936678eb8e3a5ea6d095ef3a96463bf2c28b43eff5119dc7a83a00f20108fa5a7f756a5171b2cb0b961d34ef376fe2790b1c3c00dbc5c37bf3155372c5ff92dd1540c0b54db32164cb87d0b7aae45b499401828e96932ebef037d39c84609fa46d488982cb39a1fa64162f1f3bc063e36d743500dcd8d4ce1fa8b36d3fa474d4ce351095470a548631b02daa6fb85165f258e7c89f29054fc2b290692e80183d08105cbb4e9b5ccbb2d69d8276f58b9c93ec7a36c436a1b427c1b78dfc5161a20ae823ceefebe3db8609d8ec5dd9a2af40190b2aa2543b7144ac500453033ac93a39c7c761538a66eb4c8567803367b106ad7bc077ee908afabe7d3f27300dbc8afb068b8449424b91aa94dc932fbf2480cdf55d42806f1e4fd12d17475cc5502716980b99d5973f771c91fa82a6961e48020f6db8f27ad978739e8f6f66ecfa133ea92589fcc5204b53112c7d0bb4fd4604dd9737d34b1cb97d93024855d27a9da218e70811175e07898d1f5973b042864f75fdfd4ac7ca59afa7a6f41aca22e41fcb010a139fb879f40eaa3bfd7bb1604f8ed418f2f42738c9d2c3c2b0061f13c0c7fdc82af193d270bf7130f0731fd13adf0ba723d2f4b69a771d1f6f765fdb526fac0fd07854be1dcf2c79e3388aa35eb5affecc0de7313097795d889917f089a74eafcf8f68c02541d6ed2f7eaf7ac7f54af6649b08af731210cc7f24e69a00bb0f84cb70ca70f085ae0a6ef97416c16fd662845ea2c753156c29e3b06c22216e0b7fb22cdac4f644f1556afa44f1e7795d2032d8ce0cbf3bef84d460454a5a955339083fe8fbf3ca393a1c3c22c6e87ec4d9795aada20b1a6ff6da152255e5322ca76148260139930f6c0d1020b58eab5b4a8f684732a14c548e18b52b5b82947bc40aef94c35a8a04471cd92d0a04c76d29c58d8345d498e76f3e5cdb2812deb83589685bf3495ce559e6c4fb950b55467ee5ab956cbe20edf4e18ba65b0c486ada4156530e55b1b4e5d83eb6050e58414075c760efe928e302dc4f4fe31e56bbfb14d0e9617bc87767053e0d393a810890554c0d909a7ef7a490c23e6936866803b4de53472bfdd7fd43a4d47ded0d6ab323785314caa5758e12e2c0670d15787b14190aae7fbba821d2c645f6c411f5ad417b27e2fddedd67f66812bd694716e2c465391bba3c204380fb710c5311855433c14c31109d79192cc6350d3f980f5a6c7e9180e9b191f2cc4e8aa50910753577125ccbf84b6920db878e42c358703d2d7e30fb4f2323b64c83709daafe2b7478c06e791a883f163302ec885de89eb140746ab1b1875dc9767f2de584af93695a6e5995893cb276efa1db3b698769b2f19b226857ede8a853d65b3a73bcb3377036891b661ec718a0c8c59e4b7a7111298bfaa4eda54f6448ecbcb906f36f9333b5fc4d5ba57e4191675b77cfe4de5305f1123a6cb8c6127e482c62dc4ae2bf681967f7aa0f21bac6c4e8211b30cb79f0315c6ead3c521d35d797a2775830064f026fda0423a27e2e3b2ef00dd2d15fdf951cccdd214202a37aff87e05211afea6bc7210fe848103f3ef7efa4da77804820ba49b27175777d7321fa48bc7813b47187ca5fba06736e984c8054e7e2b0a480f82d2fd167119cd76b0508e378fc5e03f83418356830e49e030381abcff99de583776f239b3c0eabf90b4fa9f503d719aa3fc010a3faee215228df28c0ac95da50ca4a38ab2658e127889e8000075c1ebc77e6dd40f3f360cd2717b9d52fefa7ac694e3cb1b83e90e27a390b51e8341c5cd1cdf4f87296107711d2043a436d6bedcaf973868c50abebd715eba8b9704735aa60417794f0ed3f125cb1d79bca26c26b47a528fe1ae6512ef44b0c99a3b5170f03b74e1b035cf4123b63b80d009efe31cf2ba0f030ff1e4d6b7fea218c385a241c2effb73c87183a9e756c3cc55d496c1b793f38041a12f419542ba752f1ca3cdac2861be8a07fa96f5bf07306a780a6be067ac31e937dd3f0e50f7fcf4675418147a20073010eccfd1e3645ef75ff5091c329d8df1925ebfb6afaa0833881e1c177db8b932955e12d64ed34f4ab2664e3d7c35e9b809d2c2a16d35251c847c26f492c5bdf089f557205527b3ff28207094f640d0e0b30616afbf6744e9f8ec4888277b36fee940c5e7db1c7d8f11bef906770f1cf0f07de93157eead23bd427e8754a2239fcd4e921505b841016bccde779322206cd2a467ece8d9bc0bb733f6cc907c46edc5853312127737a07f28bf6e151514499b5ea37934004ffb078a8176bd3e45816cd1c78360fa64958a893afdbf55bc633358656fc34e303aa8d9042e134413d8614dc7f619844bb75538226d2887cc9d5ddd729175110facfb8a134f9c19fec58773769cacdd7a80b5467c3685568f98fd5d4a7817f67deded33d0404cf58ca5f4602cb1cc19c525b88df77f71ff2d65b6b97509a143896f3a76763b901ca4467bd7a426b954bca121194c8d7061219a64843f7aeafaecb118d1f33ab16ba341fd80dd8c430a5b5c361b0624de9ad84d1781b6f804b0e3968c0f0085dd1d4fccf0be696b24e28dd72724fdae1467bf855b48151fa89b0069fa3259eee4151353b52aa63ba6ba72d5913f5cc50c4664c39bbad105942bf47fe890c9970613386c63fdfdb84c95e236d767c7379b620c69343f637a8768633d375c54ecbf8801047cf9978837e93b248e94ac60d5f19028647d97d53f2e70f87aebca03a203e9707af2838389c9ffa36947bad6ae06845dea62903b2964a66cb00b1cbccb6a075c033e6d1abf41ae91de68fe65b480c6ee75d760b95d1e0c72d2c419df7e01ec7ecf91a5725053723bcc068430ec12f9b5406748cb6fca2418bfb02e70b8fa1c3b337c266b5acf890aecffba9d5bba38e4629e0e2ffdd28ae005c454bb3662fcf497c6fdf4226467af79aa3d8f113cb0ef01a8130ccbede7d8e67032b8d76a23c93de26003323ddb45166b578b0dc111b31fbeec28257dfae15755ffc783f94b92c6d8742761905fd07128844f7d296aea5c2c7a6babbc2e4a108eb06a594b6e4cf7011e7e19e531efefe523b54d9332cae45f2f139baf315933d61c9787021617f2e9f93963ccb1f136b585c56b001163478453aaf8da4adda534ad00a334bf9cb1e377ae74a99e81a0e635d12b82557ad4c547772347fa3990ec5d275886499f343b75636088c7736c770f9b77008bb4db116c975f1bd2927290a8a927837fe5a39570f66011b1b0e6c7e6e142cd58a5f44bae67cc6c8f04529e8ba3638c41c95bfadb4344869e45024a0a1ba2081248763d0db88eebf8c0fb50494ff464f99228d59bb0b088c2855ea691d070fa6319103be95dadef30d4cb5242301d4fbd7a530b25167ad8aa7610709cf2bf655d4a75cf91676f6f8eb86b08b6ab8032e6c677fd12983d56521c61effd5df0e4e49f006959aa190e138a4d74f83b1c6bcf6af7054cdf3e8e65d75c4bb28bbda824cf8924ab0184b2ad0617f43297ef52ba169b9f4950014dd6e11b76d2d4ef4f1ed33dfa04e3ac9de0ba0dcafad44173d0767d067bf7fcbcbcb6d5496a80f99e3b7850db72fe640a007c491a5231c9557db669731aeca975eb533a6c77066ddfc1c6c604a930837d2fdc1058df5b634415fb6d95ba909c861697848ec62875de0748c2360ee54152c134ad2f601d6c5ac3a9a32d7159a504c69d2ce779a486f0ecc190735ffd09b105d4b6561988ed3607f1764d9ae87fb8546ce492b38e85f0221bca57b0b81563be5238bf90d95c48d3ec93591548953f92ae1d50543a8c54096c029f9d78c6b7d5ec33615a85df5c3c29c1d4ad745332b51ed9127557dae041752ed82969b5763316d1f7aa864d9527e14b513ea3ba9a2a722963870b57b186a5be541c8f5ddff0bdf30925648696f40e843aaefc5f64d9218e17d300690e0df6c7346a547ad397484d5daf2a200bc7fb004df73d575b7884fc66941b84587afd9f0ce3bb6e2d8034c7391a17eb1c518e581d13a857375c695b18a484b7619b12fcb0a3bf52bb6ca3821968679737e3e6bc20b251a94c0eb043ad6731d089b1c7449ea5f2b0368feb0941fa755614cde9b469c854158ee97b81e0eb15399b2f7d41a2cb8e0140bf86dcbebc15daad58ab95adc11385574e85fe552a5ffba0fe606f875c30ef9a33081580fa54e6efada708746bafa0ae40e68a7b4a1cc7c85df643468c265b6536217faee6f8d83fd9e6eb9287688bea5eaa8b4553ed283375467c1dc2316c5077a1affed56027c71a2106a06593521188ba478aef0e4ec142c48edd375df3c12b5dde5663f8894ca0590269d390422c8e0070d7ce6659cbc659f4a922ee2ee423b8a2623f3229553e4138c21c3c1d9033a52b764b5930d8570042659f6dc3b108e8deced0c08234a4a3ddd6ef99b1805cc91f153db6cc20a903b6834ba0848afec416ef542925aca3a675c6c17ac1c685984336bb7045c1f114933c35ee4fdcd0f80684c38e13df5dd99027124ea847f2ecd256330e234b8891f15b0c0ff2f2334efa692aed7c78cc73f05649cabb1076ac628e3335383ac51119030424a1e5789aeeca91cf38072c8b8bcfb2c4025caead1ee181f70c28ec4bbecd42c29ec9ebe15a9694adabf45c7c356ba60b9c6cc8a7662192a730ebaa995780dbaf0d299b84c08f85fdfc825f5d204d24ad994d9c939bc9aa7e5650ef8173f72548d745a01a9e8448f87814efd5caa25f6e94dbe098ad4687d8276507588ae1fe79f5ed98b723bb79c447ab0055fa644729b11bed04e6bc61b690d3e388649b3b685c8b665971f4d2cfbec0c5d0dc1172b7426982a99c4e4fc496e75c19aab015f88a5089cb8ea7948f1b03a57d0f009fa8030e6830b4c0b8285d1b984d464b846221447869f6c600ef13b7da65229cfb6bd2b19ca84aa8fcf37041a5721e72944dc89a331dc3d4728ddd73c84155b80f3caca5b4a3f7007811fc0d71c8eda5d316668cff0a9c6d14483fd3b084e84c595ee1c0978443acb70157af53216140045c88a312737fc59867d5e7bb29f004ec4f0030cc24c735bdc7f510cc6e44a88f4465d7e9a5823ef24001fb47d853fceffdae55b68e37cf768fb61c72af67e4ee2a5a726c611f377571a5fc2316d611197dc94a7b9f3f064d3922e1898c212dee4a8e6dcde6904096e32bb1d47db9771e550cc1d8ad6e752c4ba62408d02e232d458903658ea670fbffaa682b963967a628c70f00ad54e90a6ed5ea50cc5467638a8a781d58fd5a736bd1b06d5893f276b117dc69af4ee8f1ce4afa86a85674d12143261d9fc1799dcd983afd2163a9dff50fd911bd5d7d77cbad25185826a713d8d4baa67408e2f643d4ca13337d63f5f8169cac275271889772341d220d7b7e29e5a0b4b934eb1fd1403406316fef47d4a75d6d075c1ea595918578e04b6d766146fa7c713514bfa6d4091433351e887657dad465583e2d5e88c3fa73764a7126e841275cebb29de3ebc42badbc41d8b80a14d00c27309120375ee278ff45fb5b5c449b48a17e289657e49af961ee6fbd83fc81e43983a03ade7d0afbfcc02e53a5d27ce2ff6126f4550c8a7eaef47c0848e75b500069d85868013cba53a89aeb827dfa0365a2325ab9a3fb58eac4a2791ded1539b290358e269496f9bdf3adfc2aa54e6a46469668bb20ccae20076cc788bd08a30094026bb293eb99c7d2bb955b39203ed389ca84121fd0801f854fd91ad6c04bbb42e3e5bea2fa1c6ecdc646e22c9c12648e23b15ca56a4ef870b9a30dc3c9f280e35841715f30c628075e9152e296b3e09324e9e6043ab31302288c087c39cbdab0ca6bac9357038c74c1fddbfe3669cd60248e239c88c073f68fd470e792f822632df594b193240f3470c7dc5bdac7f2fdb225e3223080382402de8a81f7abbfb335b67f5804d182099999fbbb8af3936c5cb54431153e6d9dce69769107139146c464df1121a7d6c6407488e8c46507361f54f18f9b060bdd27bdad2526184e344ca267704c7b2028a5fe261ce9ee688fa4dad0d0187d984d654ea099bf1d9ecc8da01faa3030ba9d140bec73d0ed2649a487b3da6bde2e113596ae62f273a46cfd0e411d9e51ab808b6711698cd99880d696ce4058d8b71622adf694ac2c3ae31b6416ae0c5c7867dabeab066f9deba7e0bbb7ecc4c75e3a957bda2cbe2b654a335546a1bec5b4891e5255fb15d70b3c39054893038fd1d18bcd8c1907a353b1971b6b55536b1208d0871024ac76de15522710b405a07ca59cff8fbe55ea9154ef0b12cdbbb5c7d6470037cd09e02f12ca76994ba171b7ad0ca2ff81872fa0615fef07efd507ec6ef8f3d60bfb2ab012cf50d5862d2b3235017cbcf4b4f655b142d403ab4da323c3c9f2c5db036210dd1007759e174f03d9b51feca166a4327fb6c3e41eb9df501168993a744995fc0eea1ea3769498a3afd74199dc7854f26469b0155832f548c1ae2704232fd57930ab534822ea9e0f490dc19ea214684ba3c927dc1b3385da86dc36ef4b1efd597510e8475706d17c56b560e97888fa4c976206a8d6e4bd40c3ef55f01c596b1b288c45a1b09dbd9da281ca848c5c3498970baec4c17d739d5ebfe441e217e019f372e8c116db5e0e32bd6e472ee19571bd67e08f3456e1d70be60878d8ce4a26ad3b5bb3ce120cd03bb460901f26c7b94f50a2ee27082ce6dfb9babbf8525132e386c5bf1c92e6a48f3e6e259ebd66c32e3088f846912e1b34d4fcaac3dbd3764b560925fb27779d48e0c10150236be28c7f0e0d4460a65dff77b36f923af33ad09dae1bdd834e16a833f00df24f1eedac98c702eecccbeb93f5584025d45e0eefbb950d52e9c12d78a21551d3ad5d2eea416e439444c367b0d565c0058e257fd976b6cf14942ea26d63c954f69383db4e2ca824f576f1d215fd3ea624a168bd382e2dca4be4ef3202f4ef95c4edac8bf5f0562c1c37bf44b0bb315e071ab9c5ce82adf4f2b88913aa3c29a638d28068d833dc50845cf0901a6405703d9f77fb23cd9bf4ca49da40afe2c00387cbc405d8ec0b3d119a0002b171afb3d8c409ea1fc166b5c9335e347cc3f2079127aec2f9d7de8935130b418f481741fde7ba8d8454511b3c2eff1898447f4dcc8bf034a73ddc897cc42184a0c7931930f912b6f8680df3a3d81e914f6dba824984978ef1c64cb5febe76456d55a09cb5e83e3cde5f56c49d98b0160347e87f34510ccc93739eadfc7abd345a9a3620745f5e61c23b4db19cdb4bd1e120f5680f7122ed7f717b9a93e16492bd3358facfe1c9ebb20caa276fff2ee55b1a51b5b7e48403f4dcf2ec19527e79e84de4441c90f6e44b0e245abbd2a3f27212e2cb7fb375d1edafa5634f5e221c31ad8797d75de4c8ffb164b0dcd4bf3d332e919f999925bba7112c81780c002434d19ced298d72d17ce3420e2ef708094c12eaf555f23e3a9c394acf8468cd43563da05786f2b7ed227632668bf3ace452a38f65d686d60a259525a209185e217f6c58f333962e0904d0b4aa5ecf6eec7a4b4590529d720db62877952d5d2993e0a97a4b706d567696a78e1129b7bf462f9f21e71b4ad1300256b09ddad6413b93c65a7ca155aba6c5d9b58f4975ffc92f563cd0b1fcc1da0c4421b94e4ef238e5e914e65378a9dda436c8d9f7158499b77f768935ae9afee7d5a8704305d887cb0ab7979d8431c3090719d8234c879cfc7bd51e6581ac35e1bd5cf5f12bc8c962fd9dd15b2c4991e50a2053275281d0fca4b66aad5be258cc445c7225fd1d95df0356f21e2af44a3e908d04824ded59173c2b89bd8d592e9f4bb7d089ba3dca6792e5432e16b4c46f4f387ab90390396d053f3c3ed4a483b0e4aaff5899ee14c83579c4ab20aa37ec7ccff2d848e24a2d906e5cf88e24e592abc8e2b9b5812128df1cb596f6e9658dd2762cd67d21fa097ca1d02b149e1afe5697ea402b14915c90e45da6ef66ad97ece86ec50568519f5268f4424a0a8c16cfbf7abc5ccf36b6293c7dea98e4867aa331e1000a8127ee6e7da1b87a7f4af5c74929146da07116a121887bcdb9cd254799c0753f433c2339e4110cc939ffd2cc7c435b09b7062d0603a672a159559fe9d10698ec00bce9894355ea416e01100c47deec603d0dfab7ca439cb57af2114622cacf23abe57dbc1761990c20d611608fd5631abc7b8566b5cb360b5daa85d830e9a64de226dd799cc6c22b1bd5b9184ab946fdde898f903c39df7ef74c0e8fedbc98b04f3e4f305e90a6ee6d7b5c7c7a2ade9031f9a8deb91395a381d7b96d35bdc0697d938bcab094e015bd5e1e49a16f671309d5faa1279f8256f75fa89b3b258a5d0b8bd92f7f12098975a304b2712fdb96a839870b432f77c824b1b41243645520d65eee3f73536a871f1ee83a44f1294050904ff0d41be0d379950d0f9d409eee9da7f7ce52336c3c809de0016a1a5dd4be215fe1fd4523c32b0704153ec8a928f8f6ff0d023a339feb8cf3ec2e1e6cf5f4a3a099a52b3f9e2817b1cb12b77a076558ae34a83b476d44145f98aa4777debb51de45ff45cb7fff98fd52458cdbc16adc98e8ff04c2260949a15b1087d7680af952a274b9faa07cb1aca43158b061d2af78ef6ab3c686b8cd333c8cc21b2da37e2d0f7904d6a7d8a1283bcd065f9fc8281c956e6692d23a5f6950a48cb02f06b099b0b80812f7e8eae07be88cd6a6968197ea7e8452abc7bb3f5d8d9e5225502ff9cf9f1deab43cfd98f1d341520b203d197889e36d09361046d82c5502b9736071b611aac30563828f08f8e679212345fe75fa26bcc7fa9b4f00aad19f2fdaaf6965382df9fef0c7d3657912e63d119c50d4e0118f7a0cff3e7e964f187671eee9cccc479ad022df2507625becf4b2ae0233a67890bf29263f607c5f54673534f1d684d3ea27c3e3216c87ff022543eb0cd060e32b37fa489137c180caa68b0bd827d60fe98c0f3381ce4cfcaccbf5204ebf13126deac9dc454cfa07649c4a1caa02899b45b194c0d7b0057bdf1847832762b140cbd41945e358f8603d2f56671f2cafd44ca3a0dfa4106c1646e3685ae3124d10a68731945bb699e51affeeef6e7af648561ad5cfab38a0b84ad21e0d4288e6e174be9b311ff760a5cf1050e98e38532eef3ad49c52f770c4c3e308931a4de59f345b5c4b66d825caacb6158549dc978e12a7e1c2f161d695984db2f408ec010f15b7ad8cf562ebe1aa5e9e1605e33d0bce343379de1cb456d43b91c7aaf002d944e8a407c41bfc0a357ab673d10d0fa66b8782663d5efd24bcdf1936c8f1a65d857be60aa3992844023ac82d039ff527509bc79d4cf9beb30b90ba450620f8017d26a9966ac4d4e129994770137006a9a5277a262c072eb4249c8d038069867f22f3e052dcf7f00bc7c1ec68df9743a4d72396438c11232352d8f591bbd9bdf87c735566f831e8203a24f72c735d94f69ff5d87df6ae717003e1566f41f3d2c2f3a30075a941d8adcf19c721d298091cf6613ee467c5dfbe26d8326108c7bc7fec3dec56e3b9a137496b084b79ff1cd1bb0c4ec3735a14040832f4e6d401d4b0789aa3aea8f0c90327204ba98e6d9600aff4932ace98ff0aad3ad8390d9e89047f2454f31897d0048f20b5f0f38127567e889e7b224cd2d12f4d3e3de42f46ab93d20c79b89b770065827048cb2bc26c0e32d21160d856968c3c1ac1b40906e0897b601850f3c2c8270781458f5d95fb3ee6e1e360903c7b53fc31c762964c40a5e53a7e58c607956f4ea169cf68fafb96857182fa93d0d968faf2a165b4363f5e45f881ad9fead6c3537a57358a02339e0099ec50cb4170f13229b3686492d53b2520ac95a4f58fb2da8b71edfebba1dc6373bf0e0de1ce596f695cc0ed09f3cccfc7d7546402ed9ee2cb216611116012563cb951c114cf6f24092c66908cd23000e7ab72429d472159a8c365bf8231b9ff6ed41bad7ac0f0aa59116a44f6de7d4d9839369b25761352ec75d8546e7c0001b997f6aca08855737e6e5846d49eebfaf1a9c49161723fbb6583f4946f6bdeddce6803ab4bf325fe577061160c6ccfdaf907591003f5b748fff3b9f9ffcf1870a1917a348ec6ce3134be74574eeffe6bd4709fc739aa75d615ec4813a5a1080b2a9fc0d0323c5e7feb693c61123d08257632216509e7fd4657427b223b99c423483c5d5629129ebf2689b8e961a9bc6e548a1386c6dee35cb2e6019ccaa9f1064b3c357472c07781e8bf5769a6f668116da6b9481fb1c257214b8f9df4509a32222b807303016e2208f687c45a277f5ff4a5b4d6065475204383a29ba49c5e59e50625478d0d7b17247427d86a60620afac3e03f6330466da8043a6bf5532e3a0425710d7ab406dcfe7822f0b289617e0264d30455c52147f6314264670d60470bfae433f3c8d091a9e3f03896a248bd8dc875600f2690563a7c7c9a435ea30fe9956ac40f51b83c496a4660b4be2dd39a3362e64929bd9d28fcbeb1d82c93fb966f052134d20da8be81ef32dcb2f98a5d2ce2c6761cf969e86946c57abe95a60dfae63d6393c703b550a97e7ea02f816d69b3d502b78a2f6950c8291c00dae297ac1afb0426fde644f414f12b09dacaf2359dffc23a8734de088160b7346b27c6a47a3fd2c4643668031131c59b24adde8db9d787d4507b9c18eb8da5f22c948d32a4bc91c4ec265d23be51b57905a17270727d4174c6bbaa668dcfafda1843e94f2162ce0acf73465ede530ca1d948c19d83953ce878e83794e08663e7e994072b1603875173db8624abd61f3cf5ce26001d3d64cbc65b5eb963594cc6b1f41a25513e67e51f668df01494ee762a34d37b06574afab1b89097cb79da54651b6c2fd7e0567bbf152310b705ccae6608d8d68ebdca7e2a702ac24c6c73d2f55a7cf96d47893da6586967b144ecce798e939f90e8e0cb15ca381c5f60e7dd7a087d9a28e74e26bc3fea2ac5e1cc1a6b3e4003f85ded67b086bb64a44705661e88097ce2308b756d3560d21bb1c50adf1e448720f019b131f89e8f8322fee3b862716677b02bc5932489ee17dfa95dc902b99945e110a898fed0617c6b41bb31161e3125f836961e5088ea3a4c2850e5b2c6c385f7d42d99f2bf16e9b1e5063d8ebe18576081d103dd95b0ed0bd2bcbf316ccd182aad6d34634802feda2a80bfec8dd7e71972fc00424463a16ac17847a70774a711d6f7fb959d101030a9d2e1fd0ae51159ae3f9d7a98b5bce69d5cef2ebeabb7fd31e092560015b8f7221fbd5429fb6b206d55c53122cced553c90d18538f48efe026a81cf2d8a3607ddea8f1698cd3cf5e677134773483ba05d76d0c8aef80639001dbfc9e7d8eaf1aeaff6185ba3a28e04be3e004944f75485b80192e6e0ca6df4e12b341bd7542ff83bc5e8bc65c984e3bec86e7a8acd8890404ce4e8025e4c18812a4b94231f6e05f86a7d15135daf9f3597f9724744ac13fac4fb386a3ba3b4ae59b5f11e74be115365302cccfb34ed79813420a974a75a20fd5137810ad5238061639a6d5f7b13e58b9627f6a04106afee1b21f626e5f736eaec3278a9b8e3442bf848ef798b0ebc18722862a7b080d5371fe2293d2d0f15d62a129949ba39dd406a13aededb3603a90096b0d40106aa3ddcb89d672ebe5816dbe7030e52c34ed7c94fa45f46525d507a5d68fceed6a0e841c443585b8cb4f77c792622de62a8f6562affd110e5fa12b15abc74e616b6fd07534c86b97c7422bdbbfc657fe13e4ec20f169a05a66557c09d01fb7bc26869072cf649fa0ac1e7c518e76487c852c2595bc0e7ac7a72dbd79fa0f2e0c54713d3bcfa7dd2c333ae393336ab89ba96a7d6aab45968c01dc0bdcc739a846b0673d10062ceb82d744fe42e55bf93df9ecf5da0ef1852f41122b4537b7c99ded9979e14fff4b743109024f73f14d5a4f1d3f4e7093a0a75d7ea904ef2810f3c43ee53107bb5b4d3897e3e49d7f620322a704cef744ba691051ecbe51c9dc5edf621dce65a8fbf1c9c99396f3af8bdf88ff1ebdc1a6664e99453b3228842633b493a01d35497f43fe111091a730b465daee11942c65a078135c4a722f8b493c23b1163c6bfbdb1d90ffc91abbfe8310deea0a1e3cd11fb65bec3fbe2cc9a3e84c2ee7b7eb7cbcb0c7c7b5e150f20a59d907292368cf8863d6c4e6ab9ee4963ce80cd61e5e7d48dfcaf85e2e644c80a85a9676987117197c847750a0a3f7ab12b5844b2179589b7aefafd5d2a6cb41f64c01219f7ecffe910936b491457c67315b0a782e48c339305deb29ac61d213396b3645e2ca9414325a666e171ca563e4fb68dab81eedb04b4c5ab26c9b5103390d336bc11934d689f2175a5533aeeeb6bfb34cd344648e236d6bb5a8d58ac0e07d6f9aa08e3039e2e4f3f8c02316164948f285548804b1f55d2ea3ae1818877f51eac73bb7b095786f9b7efeba2b583940632c5c1c0bf8deefd0b48c028062ebd82c56f0f52ea11a63ed1a2fd8ec779794e1a4eac5f4d4574485eb9c75be7f18ab249e6674cb81ec661821e275941bba1d77d52f0b1c8c4bb93848fc1e399cc5002def39c1d8100e7700effb263e33b7cdaacdd0691120f9ab7844a77079cd791a387e41b4053ad9cd64c916ff38e141a483602a4edc66f8a379fb7b4c7e28f4d94111e64fa30e4d6771a9f87d544ed6408ef07f898f415e8c9129c84c0ab2d318270c1bfe2ade64add98c400246923c60183204c3ce65874f65ed82f8cbdb90114403c3489c1bb7ccafe42c6aaed710756b5a3adc5df1e018a3089053c935a96783a8cdccc67254bf0ddfb0368c736f4384638d163e3ca862e4e399e8ab21ca64785f612c09069acdc1ed000f8041bc07bcfd031506b950c2f66104cc4a8301a56aad5d3c4c08a41b515fbcc55a178d03f0349e0796f5fdb13233aafa92fa226296f2f3d2c4549684f6c9bf418c4196aaffc5b13e2be25b83c16ff811f26a7dc57f8b191a370edf541efe0556d87f92502769c7e471187ee98a6502af835be440d1ea012604b7c45a4b3ab229cde775c27f4c7ca6dff0a98b99f7006261060b559983d83d663f6150e175d103da4bcbb07d6f55de607bc9efab724dbd0ffa69661b2142852992f360103149048c2139fc681f3c0336a1678b82bcfe2e79cb6a66727aa47b34ce01b2bd381bd7b98fd368b1117507b05b0ec89ea59fd43c70ded18ead4b4e8a29f6157795f68c7e1b5f888bbb640de84efb2410067fee6eecedd3cce0e40077fbaf8f3e5e3e120bfe50418d510b94030192cf6ecf4b91192b10e5993b187e1a2024e341cfce12e450f5c3850a7abaf9856f988e354e924d979e192e55391ee5fd4d129fa7fba5e5f7808e79ad0837a8c4cbd121b08617e1df3c96191c4c32169d28ab377c29e6bb87a0126702f8a5ccc082dc7c5d4a1fcf69188d9c0cbc0510968478db7d7470d51fdf5429e4679d23a1d32fedb4473aee89adf04e0c16ef7cd403b1bd09c61b849a83198b69d6a99856cf1d2ae855aa23b04497bddbbe1151044433701188d3f335e72bd45ce251a91c4e120b1ae95278353793cc7b722f5d4af7e041e40c2919199b3f8e50a258261f7d2cc91ca5a3d0977f3a4875a9acb3f25d9b721944c73cfa0122bd6c7d394614523908ebf6b6aadf097613a0756f3e4e5d70534a782ce0baa94e082759ec035f88322ffb7ad75b4e27091de78f2e27bd6e532953c4593fe838cf729e3ad1ad958306653c800683049b1e63b9b423485c587d7cbc19fc2c6f7f6782df38a2025e97bfde7c0b77949f40ffb8856c3324e022200ea65c1cf9b4a88bccbb535a8d26a5d5ac13882db761745be452503b43b1521d834ad124b148b33df03c6a04bff2639da59b74dc40f576263afbd7c31508df9c2a0762a03e1d63be25b3dde4f73b3ea62c308f0348e58e12d0cd770e23b639e9e9bab9d05b008cf3a08134ad2c97f25ea4ddef73d631395548b0533c557891a2fce42105d0805130189aa0849eb1b5a9ff74b6617dd8a37cafae8aaa904e5a3b7300a6807a824c208f3bf685100f49bdd98394710f1f5e80e37371df7c59372a84ec44db8b59081a039a0cf95a15a818691ade7be495e014c1e3cc68d2a469c466014d5a39fbffc774dcf066a922c8a79c2c6539f4abd645ef66580089b8b63aef499570acd9f3337ad8122df344a960ea815df0d28caab9f54de6a564b87ffdf416887b5a298b9793a3f3b03bcaeccce69cd93ef495d524bfc910a82e8a9ffaff32bd36fb14969698d3c5870bafe591eef054db3a3997db97cfb2f2c52c726166cabe57604a1daa87ef53efd21479bf1f906debeee7a744991f83546c81bae84867e5dde95133d8a898f2c733e168a70fafd91af76592bb0371d632919c60dbf066c09b275276de37e5f9647711407ea856ca8e77180e0619f90d0464b7871a0a401a9da6ef1f7be63ba4ce963d569c7476b787155a866f48b509b3e7474cc4ef17c25d5ca3339ac14a517cca4566aa6522fc72ee4ff3bb50246e10214121e5435e43ddc90ff55f8f80338cd24893e5d8d105cfd14feb585be581dd6ea61daeb5bf7f2f7d08ed326b69b13e18b80dc765479647d1fe0e99d7992f3034fb701a4119d6f31f053f7181677b3c80472a4e6ea4ea723802d60d0e3e545f7a85847b52d46fccc510bba0eac603cb6a60daad5776e190ad9206cdab39929e6114a910b94e8644fe1ad56173895f220e7004100b9f72fbed666b2e64ebf1bc25fed99a85e06ef3ef644ae9cd8ac5953a1901cad62d5e9ebd254f83593f1117afcda73e932dcc80e6fcdc8cec963cc6100a8e612f01d33de46cdf5c1a5f2c409328a5c3c155f97c684ace1faf44f93a3380bd802fa4bb6d6297037c7e53a4ebd44ffd8d8522ec58e23b015840a59b52bdeb9109f759320e1750641643783711460e7a091a87801f614e9732e822fb477e38baf58ec89f031259170090229d91b61224193c7cee32411947174f3cd67662e3d61f4722bd3afd39aadb3a7e1a186c103cefca94b24baf9bfba5916cfb9c046850d8142e3d18856e9613a1d6d636740a01bb2c4a60500a0f604852a4e2a102a3f0da022c1b4acea51b5db7068b86698ec3b1</script>
  <div class="hbe hbe-content">
    <div class="hbe hbe-input hbe-input-default">
      <input class="hbe hbe-input-field hbe-input-field-default" type="password" id="hbePass">
      <label class="hbe hbe-input-label hbe-input-label-default" for="hbePass">
        <span class="hbe hbe-input-label-content hbe-input-label-content-default">Hey, password is required here.</span>
      </label>
    </div>
  </div>
</div>
<script data-pjax src="/lib/hbe.js"></script><link href="/css/hbe.style.css" rel="stylesheet" type="text/css">
    </div>

    
    
    

      
      <div>
    
        <div style="text-align:center;color: #ccc;font-size:14px;">------ 本文结束------</div>
    
</div>
      
        

<div>
<ul class="post-copyright">
  <li class="post-copyright-author">
    <strong>本文作者： </strong>陈政任
  </li>
  <li class="post-copyright-link">
    <strong>本文链接：</strong>
    <a href="https://atan2021.gitee.io/2021/%E6%97%A5%E8%AE%B0/" title="日记">https://atan2021.gitee.io/2021/日记/</a>
  </li>
  <li class="post-copyright-license">
    <strong>版权声明： </strong>本博客所有文章除特别声明外，均采用 <span class="exturl" data-url="aHR0cHM6Ly9jcmVhdGl2ZWNvbW1vbnMub3JnL2xpY2Vuc2VzL2J5LW5jLXNhLzQuMC8="><i class="fab fa-fw fa-creative-commons"></i>BY-NC-SA</span> 许可协议。转载请注明出处！
  </li>
</ul>
</div>


      <footer class="post-footer">
          <div class="post-tags">
              <a href="/tags/%E6%97%A5%E8%AE%B0/" rel="tag"><i class="fa fa-tag"></i> 日记</a>
          </div>

        


        
    <div class="post-nav">
      <div class="post-nav-item">
    <a href="/2021/Markdown%E8%AF%AD%E6%B3%95%E6%B5%8B%E8%AF%95%E8%AE%B0%E5%BD%95/" rel="prev" title="测试记录">
      <i class="fa fa-chevron-left"></i> 测试记录
    </a></div>
      <div class="post-nav-item">
    <a href="/2021/%E2%80%9C%E6%95%91%E5%BF%83%E6%9D%A5%E4%BA%86%E2%80%9D%E9%A1%B9%E7%9B%AE%E7%A1%AC%E4%BB%B6%E7%B3%BB%E7%BB%9F%E6%90%AD%E5%BB%BA%EF%BC%88%E4%B8%80%EF%BC%89%E2%80%94%E2%80%94%E7%A1%AC%E4%BB%B6%E9%80%89%E5%9E%8B/" rel="next" title="“救心来了”项目硬件系统搭建（一）——硬件选型">
      “救心来了”项目硬件系统搭建（一）——硬件选型 <i class="fa fa-chevron-right"></i>
    </a></div>
    </div>
      </footer>
    
  </article>
  
  
  



          </div>
          

<script>
  window.addEventListener('tabs:register', () => {
    let { activeClass } = CONFIG.comments;
    if (CONFIG.comments.storage) {
      activeClass = localStorage.getItem('comments_active') || activeClass;
    }
    if (activeClass) {
      let activeTab = document.querySelector(`a[href="#comment-${activeClass}"]`);
      if (activeTab) {
        activeTab.click();
      }
    }
  });
  if (CONFIG.comments.storage) {
    window.addEventListener('tabs:click', event => {
      if (!event.target.matches('.tabs-comment .tab-content .tab-pane')) return;
      let commentClass = event.target.classList[1];
      localStorage.setItem('comments_active', commentClass);
    });
  }
</script>

        </div>
          
  
  <div class="toggle sidebar-toggle">
    <span class="toggle-line toggle-line-first"></span>
    <span class="toggle-line toggle-line-middle"></span>
    <span class="toggle-line toggle-line-last"></span>
  </div>

  <aside class="sidebar">
    <div class="sidebar-inner">

      <ul class="sidebar-nav motion-element">
        <li class="sidebar-nav-toc">
          文章目录
        </li>
        <li class="sidebar-nav-overview">
          站点概览
        </li>
      </ul>

      <!--noindex-->
      <div class="post-toc-wrap sidebar-panel">
      </div>
      <!--/noindex-->

      <div class="site-overview-wrap sidebar-panel">
        <div class="site-author motion-element" itemprop="author" itemscope itemtype="http://schema.org/Person">
    <img class="site-author-image" itemprop="image" alt="陈政任"
      src="/images/avatar.jpg">
  <p class="site-author-name" itemprop="name">陈政任</p>
  <div class="site-description" itemprop="description">what atan</div>
</div>
<div class="site-state-wrap motion-element">
  <nav class="site-state">
      <div class="site-state-item site-state-posts">
          <a href="/archives/">
        
          <span class="site-state-item-count">14</span>
          <span class="site-state-item-name">日志</span>
        </a>
      </div>
      <div class="site-state-item site-state-categories">
            <a href="/categories/">
          
        <span class="site-state-item-count">5</span>
        <span class="site-state-item-name">分类</span></a>
      </div>
      <div class="site-state-item site-state-tags">
            <a href="/tags/">
          
        <span class="site-state-item-count">5</span>
        <span class="site-state-item-name">标签</span></a>
      </div>
  </nav>
</div>



      </div>

    </div>
  </aside>
  <div id="sidebar-dimmer"></div>


      </div>
    </main>

    <footer class="footer">
      <div class="footer-inner">
        

        

<div class="copyright">
  
  &copy; 
  <span itemprop="copyrightYear">2022</span>
  <span class="with-love">
    <i class="fa fa-heart"></i>
  </span>
  <span class="author" itemprop="copyrightHolder">陈政任</span>
</div>
  <div class="powered-by">由 <span class="exturl theme-link" data-url="aHR0cHM6Ly9oZXhvLmlv">Hexo</span> & <span class="exturl theme-link" data-url="aHR0cHM6Ly9taXN0LnRoZW1lLW5leHQub3Jn">NexT.Mist</span> 强力驱动
  </div>

        








      </div>
    </footer>
  </div>

  
  <script src="/lib/anime.min.js"></script>
  <script src="//cdn.jsdelivr.net/npm/jquery@3/dist/jquery.min.js"></script>
  <script src="//cdn.jsdelivr.net/gh/fancyapps/fancybox@3/dist/jquery.fancybox.min.js"></script>
  <script src="/lib/velocity/velocity.min.js"></script>
  <script src="/lib/velocity/velocity.ui.min.js"></script>

<script src="/js/utils.js"></script>

<script src="/js/motion.js"></script>


<script src="/js/schemes/muse.js"></script>


<script src="/js/next-boot.js"></script>

<script src="/js/bookmark.js"></script>




  
  <script>
    (function(){
      var canonicalURL, curProtocol;
      //Get the <link> tag
      var x=document.getElementsByTagName("link");
		//Find the last canonical URL
		if(x.length > 0){
			for (i=0;i<x.length;i++){
				if(x[i].rel.toLowerCase() == 'canonical' && x[i].href){
					canonicalURL=x[i].href;
				}
			}
		}
    //Get protocol
	    if (!canonicalURL){
	    	curProtocol = window.location.protocol.split(':')[0];
	    }
	    else{
	    	curProtocol = canonicalURL.split(':')[0];
	    }
      //Get current URL if the canonical URL does not exist
	    if (!canonicalURL) canonicalURL = window.location.href;
	    //Assign script content. Replace current URL with the canonical URL
      !function(){var e=/([http|https]:\/\/[a-zA-Z0-9\_\.]+\.baidu\.com)/gi,r=canonicalURL,t=document.referrer;if(!e.test(r)){var n=(String(curProtocol).toLowerCase() === 'https')?"https://sp0.baidu.com/9_Q4simg2RQJ8t7jm9iCKT-xh_/s.gif":"//api.share.baidu.com/s.gif";t?(n+="?r="+encodeURIComponent(document.referrer),r&&(n+="&l="+r)):r&&(n+="?l="+r);var i=new Image;i.src=n}}(window);})();
  </script>




  
<script src="/js/local-search.js"></script>













  

  

  

<script src="/live2dw/lib/L2Dwidget.min.js?094cbace49a39548bed64abff5988b05"></script><script>L2Dwidget.init({"pluginRootPath":"live2dw/","pluginJsPath":"lib/","pluginModelPath":"assets/","model":{"jsonPath":"/live2dw/assets/tororo.model.json"},"display":{"position":"right","width":180,"height":360},"mobile":{"show":false},"react":{"opacityDefault":1,"opacityOnHover":1},"log":false,"tagMode":false});</script></body>
</html>
